As an alternative to a hard disk drive, an SSD (Solid State Drive) using, for example, a NAND flash memory has been developed. Along with the micronization of NAND flash memories in recent years is the growing influence of interference noise between adjacent cells, which leads to a higher possibility of write errors. In addition, repetitive writing and reading of the NAND flash memory may cause errors in data stored in the memory cells. Hence, a memory system using a NAND flash memory performs error correction using ECC (Error Correction Code) to repair read data.